                   C Set ++ Class Libraries Version 2.0
                                 Fixes List
                   ------------------------------------
*************************************************************************
*                                                                       *
*  This CSD contains fixes that apply only to C/C++ Tools Version 2.0.  *
*  Do not attempt to apply it to C Set++ version 2.1 or to C/C++ Tools  *
*  Version 2.01.                                                        *
*                                                                       *
*************************************************************************
=========================================================================

               CTL0009 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0009
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 QUAL-IMP      UICL         Error in IThread::defaultAutoInitPM results in
                            dfltAutoInitPM unconditionally being set to
                            IThread::inPMSession().
-------------------------------------------------------------------------
               UICL         ISpinButton::setValue does not work under WARP
-------------------------------------------------------------------------
 QUAL-IMP      UICL         WARP problem - no scroll bars on IViewPort
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IEntryField ctor fails for spin button child
                            on WARP



               CTL0008 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0008
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 QUAL-IMP      CCL          Possible memory overlays and stack corruption
                            when an exception is logged which contains
                            text longer than 512 characters.
-------------------------------------------------------------------------
=========================================================================
               CTL0007 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0007
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 QUAL-IMP      UICL         IFrameWindow::dismiss causes a trap if there
                            is not an owner window and not modal.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IColor::value may not work properly if the
                            user has modified the logical color table.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IMultiLineEdit::hasSelectedText doesn't
                            detect a single selected character.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Improved link time for static link libraries.
-------------------------------------------------------------------------
=========================================================================
               CTL0006 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0006
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 QUAL-IMP      UICL         IContainerControl::scroll and
                            IContainerControl::scrollToObject do not
                            work correctly in a non-split details view
                            or in non-details view with details view
                            columns inserted.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         A canvas (1) without a child window that can
                            accept the input focus, (2) with different
                            parent and woner windows, and (3) either
                            the client window of a frame or owned by
                            another canvas could cause the system to hang.
                            A common way to create this situation is to
                            add an empty canvas to a view port.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Help for a notebook tab should be provided
                            through the IPageHandler::help function.
                            However, this function was never being called
                            when the user pressed F1 when on a notebook
                            tab.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IWindow::windowWithHandle was being called
                            within a critical section.
-------------------------------------------------------------------------
 PJ14635       UICL         Excessive Tracing closes PMPRINTF.EXE
-------------------------------------------------------------------------
 PJ14636       UICL         Activation not returning to owner after
                            modeless dialog is dismissed.
-------------------------------------------------------------------------
 PJ14638       UICL         Turning trace off while in a member function
                            causes stack overrun in trace formatter.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Memory leaks in IFont during IFont
                            destruction.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IMultiLineEdit::hasSelectedText returns true
                            erroneously.
-------------------------------------------------------------------------
 PJ14640       UICL         The ICnrCtl::hwnd variable stored in IThread
                            may be invalid.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Help, File Dialog, and Font Dialog don't work
                            with the OS/2 Performance Beta.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IThread::messageQueue returns HMQ_CURRENT
                            instead of the actual message queue handle
                            for the thread.
-------------------------------------------------------------------------
=========================================================================
               CTL0005 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0005
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 QUAL-IMP      CCL          Reduction of generated code size by changing
                            internal macro expansions.
-------------------------------------------------------------------------
 QUAL-IMP      CCL          Suppress informational warning messages
                            in Collection Classes via #pragma info usage.
                            Made Collection Classes independant from
                            /Sp1 option and #pragma pack usage via
                            #pragma pack(4) usage in header files.
-------------------------------------------------------------------------
 QUAL-IMP      CCL          Support multiple includes of "isynonym.hpp"
                            to get independant of include sequence.
-------------------------------------------------------------------------
 QUAL-IMP      CCL          Improved coding example "dskusage" by
                            changing output sequence from forward to
                            backward.
-------------------------------------------------------------------------
 QUAL-IMP      CCL          Improved comments in coding example
                            "DSUR".
-------------------------------------------------------------------------
 QUAL-IMP      CCL          Adjusted expected output in example
                            "WORDBAG".
-------------------------------------------------------------------------
 PJ13362       UICL         IString::isLike failing on wildcard search
                            Error encountered when pattern matching
                            after * fixed.
-------------------------------------------------------------------------
 PJ13363       UICL         IStaticText paints disabled text wrong
                            The static text handler is incorrectly
                            painting disabled text in the static text
                            field.
-------------------------------------------------------------------------
 PJ13365       UICL         No error message for
                            IHelpWindow::addLibraries
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IContainerObject::deleteRecord modified
                            to fix memory Leak in the Container.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Cannot hide objects in the container
-------------------------------------------------------------------------
 QUAL-IMP      UICL         DDEClientConversation Hang on Shutdown
-------------------------------------------------------------------------
 QUAL-IMP      UICL         DDE uses critical sections incorrectly
=========================================================================
               CTL0004 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0004
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 PJ12170       UICL         Acknowledgement from remoteExecute handled
                            incorrectly in DDE.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IFont class is missing operator=.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Memory for the window list is not being
                            freed when a window is destroyed.  A static
                            member of IMenuHdr is being freed too soon.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IMultiLineEdit::importFromFile adds one too
                            many bytes to the mle if the file length is
                            not a multiple of 1024.
-------------------------------------------------------------------------
 QUAL-IMP      CCL          A number of functions in some header files
                            are missing inline keywords.
-------------------------------------------------------------------------
 QUAL-IMP      CCL          The compare and hash functions in <istdops.h>
                            cannot be passed a pointer to a constant
                            string.
=========================================================================
               CTL0003 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0003
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 PJ11721       UICL         IMenuHandler::menuEnded() was accessing
                            memory that was no longer valid.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         When creating a textCursor for a container in
                            details view, the cursor does not work
                            properly for all the text columns.
=========================================================================
               CTL0002 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0002 and
later corrective service
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 PJ11045       UICL         IStaticText::setColor() generates solid
                            colors for the background when a pattern
                            color is specified.
-------------------------------------------------------------------------
 PJ11046       UICL         Application hangs occur intermittently with a
                            multi-threaded application using IThread.
-------------------------------------------------------------------------
 PJ10748       UICL         The layout algorithm in IMultiCellCanvas
                            intermittently failed to allocate all
                            available pels to the columns.
-------------------------------------------------------------------------
 PJ10750       UICL         IListBox::itemText() and
                            IComboBox::itemText() lose the last character
                            of a DBCS string.
-------------------------------------------------------------------------
 PJ10751       UICL         When a ISplitCanvas is sized very small, the
                            columns are not allocated in their original
                            proportions.
-------------------------------------------------------------------------
 PJ10825       UICL         Using IHelpWindow::setHelpTable() to load a
                            help table from a DLL results in an exception
                            being thrown.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Closing an IFrameWindow using ALT-F4 can
                            cause all windows to close and the
                            application to end.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         The container window is not being refreshed
                            correctly by IContainerControl:
                            addObjectAfter().
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Moving a leg of the tree in the tree view of
                            IContainerControl to a new parent causes a
                            trap.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Editing the container title with
                            editContainerTitle() or a column heading in
                            details view with editColumnTitle() causes an
                            exception to be thrown.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         The default push button on a frame extension
                            of an IFrameWindow doesn't work correctly.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Unable to give an entry field on a canvas on
                            a notebook page the focus.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IWindow: setAutoDestroyObject() doesn't work
                            in certain scenarios.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         DBCS translate results in a trap.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         DBCS status area not displaying properly.
=========================================================================
               CTL0001 is informal Corrective Service.
The following fixes are provided in Class Libraries CS CTL0001 and
later corrective service
*************************************************************************
FIX/APAR      COMPONENT     PROBLEM DESCRIPTION
*************************************************************************
 QUAL-IMP      UICL         IBitmapControl: Allows setText() to put text
                            on IBitmapControls, independent of which
                            constructor was used.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ICanvas:  fixupChildren()
                            Corrected the loss of the default push
                            buttons, after a font is dropped on a
                            canvas window.
-------------------------------------------------------------------------
 PJ09582       UICL         IComboBox:  locateText
                            Changed default value for index to -1
                            instead, of 0.
-------------------------------------------------------------------------
 PJ09583       UICL         IDate:  isValid
                            The overloaded version of this function that
                            accepts year + day has been fixed.
-------------------------------------------------------------------------
 PJ09584       UICL         IDDETopicServer:
                            Changed to allow conversations with
                            non-standard applications that do not
                            correctly set MRESULT to TRUE when processing
                            WM_DDE_INITIATEACK message.
-------------------------------------------------------------------------
 PJ09585       UICL         IEntryField:  enable()
                            Fixed bug that causes a read-write entry
                            field to be read-only if the disable()
                            function is called on a disabled entry field.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IEntryField:  color
                            Fixed bug that caused the color of the
                            background to be returned when querying the
                            foreground color.
-------------------------------------------------------------------------
 PJ09586       UICL         IFileDialogHandler:  filter(), validate()
                            A fix has been made so that a call to
                            setResult() inside of filter() or validate()
                            can be used to indicate whether the fileName
                            is OK to process.  Use setResult(false) if
                            the file is not acceptable for further
                            processing.
-------------------------------------------------------------------------
 PJ09587       UICL         IFileDialogHandler:  filterName(),
                            validateName()
                            There are new functions that were added as
                            easier ways of filtering and validating.  See
                            IFILEHDR.HPP for complete details.
-------------------------------------------------------------------------
 PJ09588       UICL         IHelpEvent:  controlId()
                            Fixed this function to return the correct
                            control ID value.
-------------------------------------------------------------------------
 PJ09589       UICL         IHelpHandler:  dispatchHandlerEvent()
                            This has been fixed to properly process the
                            the HM_NOTIFY help notification.  The
                            following virtual functions were not being
                            called properly: controlSelect(),
                            showCoverage(), showPage(), swapPage(),
                            showIndex(), showContents(), showHistory(),
                            openLibrary(), showSearchList().
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IKeyboardEvent:  scanCode()
                            Corrected a check resulting in an erroneous
                            assertion being thrown on key releases.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IMenu:  setConditionalCascade()
                            New function that allows you to make an
                            exiting cascade submenu into a conditional
                            cascade.  It requires that the default item
                            be specified.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         IMenu:  removeConditionalCascade()
                            New function for undoing the effects of
                            setConditionalCascade().
-------------------------------------------------------------------------
 PJ09590       UICL         IMessageBox:  show()
                            Fixed bug that caused an exception to be
                            thrown when trying to show text loaded from a
                            resource (.rc) file.  The message text can be
                            a message or string resource.  Added
                            description of styles generated by each
                            severity and a description of the aHelpId
                            argument.
-------------------------------------------------------------------------
 PJ09591       UICL         IMessageBox:
                            Fixed bug so that help is now displayed when
                            the Help button is selected if a help window
                            has been associated with the message box's
                            owner.
-------------------------------------------------------------------------
 PJ09592       UICL         IMultiLineEdit:  setText()
                            Removed the default value for bufferSize.
                            This will remove the compiler ambiguity
                            error.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ISlider:  setTicks()
                            Fixed bug that prevented ticks from being set
                            on the slider scales except on the
                            constructor.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ISlider:  color()
                            Fixed bug that caused the wrong color to be
                            returned for the background of the slider.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ISpinButton:  addAsLast()
                            Fixed bug so that the item is added,
                            previously the function did nothing.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ISpinButton:  enable()
                            Fixed bug that caused th entry field to be
                            cleared, and an exception to be thrown for
                            numeric spin buttons.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ISpinButton:  replaceAt()
                            Fixed a bug that caused the wrong item to be
                            replaced.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ISpinButton:  setToNext()/setToLast()/
                            setToFirst()/setToPrevious()
                            Fixed bugs that prevented a subsequent
                            spinTo() from working correctly, and
                            intermittently caused setToFirst() to set
                            the cursor to an item other than the first.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ISpinButton:  setInputType()
                            Fixed a bug that caused a 0 to be displayed
                            when a numeric spin button was changed to
                            alphanumeric.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         ISplitCanvas:  Dragging Split Bar
                            Fixed a bug that caused the split bar to jump
                            to a location other than where it was dropped
                            This only occurred on the first drop of a
                            split bar.
-------------------------------------------------------------------------
 PJ09593       UICL         IString:  d2x
                            Fixed bug that resulted in 7FFFFFFF being
                            returned when this function was applied to
                            IStrings that held the ASCII representation
                            of large unsigned numbers (for example,
                            Ox81234567).
-------------------------------------------------------------------------
 PJ09594       UICL         ISystemMenu:  Destruction of underlying PM
                            system menu. AN ISystemMenu object will no
                            longer destroy the underlying PM system menu
                            when the object goes out of scope or is
                            otherwise deleted.  You can now create an
                            ISystemMenu on the stack.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Sample Program:  DDE Client
                            Fixed a bug that caused the program to ABEND
                            under certain conditions.
-------------------------------------------------------------------------
 QUAL-IMP      UICL         Sample Program:   Hello5 & Hello6
                            Corrected the spelling for the Extended help
                            menu.
=========================================================================
